package com.linkallcloud.core.manager;

import java.util.List;

import com.linkallcloud.core.domain.FlowStep;
import com.linkallcloud.core.dto.Trace;
import com.linkallcloud.core.service.IFlowStepService;

public abstract class FlowStepManager<T extends FlowStep, S extends IFlowStepService<T>> extends BaseManager<T, S>
        implements IFlowStepManager<T> {

    @Override
    public List<T> findByObj(Trace t, Integer flowType, Long objId, String objUuid, String objType,
            String objModifyType) {
        return service().findByObj(t, flowType, objId, objUuid, objType, objModifyType);
    }

    @Override
    public List<T> findByTwf(Trace t, Long twfInstId, String twfInstUuid) {
        return service().findByTwf(t, twfInstId, twfInstUuid);
    }

    @Override
    public void progress(Trace t, Long twfInstId, String twfInstUuid, int progress) {
        service().progress(t, twfInstId, twfInstUuid, progress);
    }

    @Override
    public void complete(Trace t, Long twfInstId, String twfInstUuid, int op) {
        service().complete(t, twfInstId, twfInstUuid, op);
    }

    @Override
    public boolean flow(Trace t, T flow) {
        return service().flow(t, flow);
    }

}
